﻿//Copyright 2011 - Jonathan Allen

using System;
using System.ComponentModel;
using System.Diagnostics.Contracts;

namespace Granite.ComponentModel
{
    /// <summary>
    /// This interface allows the walking of an object graph looking for unsaved changes
    /// </summary>
    public interface IChangeTrackingGraph : IChangeTracking
    {
        
        /// <summary>
        /// Walk the graph looking for unsaved changes
        /// </summary>
        /// <returns></returns>
        [Pure]
        bool IsChangedGraph();
    }
}
